Radio-controlled timepiece, method of obtaining date/time information, and recording medium

ABSTRACT

A radio-controlled timepiece, including: a radio wave reception unit that receives satellite waves and extracts an incoming code sequence formatted in a prescribed format from the received satellite waves; and a processor that generates in advance an expected code sequence that is expected to be part of the incoming code sequence and detects the expected code sequence within the incoming code sequence by sequentially comparing the expected code sequence with the incoming code sequence, the processor determining a present date/time, as indicated by the satellite waves, in accordance with a timing at which the detected code sequence occurs within the incoming code sequence as measured by time kept by the timepiece, wherein the expected code sequence includes codes that change with a transmission period during which time-related information that includes satellite date/time contained in the satellite waves, which is formatted in the prescribed format, is transmitted.

BACKGROUND OF THE INVENTION

The present invention, in one aspect, relates to a radio-controlledtimepiece that obtains date/time information by receiving radio wavesfrom a positioning satellite, a method of obtaining date/timeinformation, and a storage medium.

Conventionally, there is an electronic watch (radio-controlledtimepiece) that accurately maintains the date/time that the watch countsby receiving radio waves from a navigation satellite (positioningsatellite) related to GNSS (global navigation satellite system) andobtaining date/time information therefrom. Such a radio-controlledtimepiece does not require manual operation by the user and can countdate/time at various locations in the world and accurately maintain thedisplayed date/time.

However, in an electronic watch, the load involved in receivingsatellite waves is significantly greater than the load involved incounting and displaying date/time. Dealing with the reception ofsatellite waves gives rise to the problem of increased battery size andother associated problems such as increase in the size and weight of theelectronic watch. To address such problems, various types oftechnologies for reducing energy consumption have been developed so far.

One such technology for reducing energy consumption includes shorteningthe time required for receiving radio waves. Japanese Patent ApplicationLaid-Open Publication No. 2009-36748 discloses a technology thatreceives a predefined portion of the signal including date/timeinformation according to a signal format (navigation message)transmitted by the GPS satellites and that temporarily pauses receptionwhile the GPS satellites are transmitting unnecessary information, forexample.

In this process, to avoid misidentifying date/time, parity data for thedata block that includes the predefined portion of the signal describedabove is obtained to ensure the integrity of the incoming data.

However, part of the data unrelated to the date/time information doesnot necessarily need to be obtained accurately. A reception method thatdemands the integrity of these unnecessary data using parity data isless efficient in obtaining the date/time information.

SUMMARY OF THE INVENTION

An aim of the present invention is to provide a radio-controlledtimepiece that can obtain accurate date/time information moreefficiently, a method of obtaining date/time information, and arecording medium.

Additional or separate features and advantages of the invention will beset forth in the descriptions that follow and in part will be apparentfrom the description, or may be learned by practice of the invention.The objectives and other advantages of the invention will be realizedand attained by the structure particularly pointed out in the writtendescription and claims thereof as well as the appended drawings.

To achieve these and other advantages and in accordance with the purposeof the present invention, as embodied and broadly described, in oneaspect, the present disclosure provides a radio-controlled timepiece,including: a radio wave reception unit that receives satellite waves andextracts an incoming code sequence formatted in a prescribed format fromthe received satellite waves; and a processor that generates in advancean expected code sequence that is expected to be part of the incomingcode sequence and detects the expected code sequence within the incomingcode sequence by sequentially comparing the expected code sequence withthe incoming code sequence, the processor determining a presentdate/time, as indicated by the satellite waves, in accordance with atiming at which the detected code sequence occurs within the incomingcode sequence as measured by time kept by the timepiece, wherein theexpected code sequence includes codes that change with a transmissionperiod during which time-related information that includes satellitedate/time contained in the satellite waves, which is formatted in theprescribed format, is transmitted.

In another aspect, the present disclosure provides a radio-controlledtimepiece including: a radio wave reception unit that receives satellitewaves and extracts an incoming code sequence formatted in a prescribedformat from the received satellite waves; a processor that generates inadvance an expected code sequence that is expected to be part of theincoming code sequence and detects the expected code sequence within theincoming code sequence by sequentially comparing the expected codesequence with the incoming code sequence, the processor determining apresent date/time, as indicated by the satellite waves, in accordancewith a timing at which the detected code sequence occurs within theincoming code sequence as measured by time kept by the timepiece; and astorage unit that stores a reception history of most recently receivedsatellite waves and a code sequence that is obtained from the mostrecently received satellite waves, wherein the processor determines,based on types of information represented by the code sequence that isstored in the storage unit, a part of the code sequence that does notchange within a time interval between when the most recently receivedsatellite waves were received and a present moment and includes at leasta portion of the part of the code sequence in the expected codesequence.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory, andare intended to provide further explanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing an electronic watch according toembodiments of the present invention.

FIG. 2 is a view describing a format of navigation message sent by theGPS satellites.

FIG. 3 is a flowchart showing control steps for obtaining and processingdate/time.

FIG. 4 is a flowchart showing control steps for receiving and processingdate/time information.

FIG. 5 is a view showing the result of a comparison between the datareception time required by an electronic watch according to Embodiment 1and the data reception time required by a conventional three-wordreception.

FIGS. 6A and 6B are views describing a setting for the timing forstarting data reception.

FIG. 7 is a flowchart showing control steps in receiving and processingof date/time information executed by an electronic watch according toEmbodiment 2.

DETAILED DESCRIPTION OF EMBODIMENTS

Below, embodiments of the present invention will be described withreference to the drawings.

Embodiment 1

FIG. 1 is a block diagram showing a functional configuration of anelectronic watch 1 according to Embodiment 1, which is a positioningdevice and a radio-controlled timepiece of the present invention.

The electronic watch 1 is a radio-controlled timepiece that can receiveradio waves from at least American positioning satellites (referred toas GPS satellites below) related to GPS (global positioning system) andobtain date/time information.

The electronic watch 1 includes, a host CPU 41 (central processing unit;processor), a ROM 42 (read only memory), a RAM 43 (random accessmemory), an oscillator circuit 44, a frequency divider 45, a countercircuit 46 that function as a counter unit, a display unit 47, a displaydriver 48, an operation unit 49, a power source unit 50, a satellitewave reception and processing unit 60, an antenna AN, and the like.

The host CPU 41 carries out various types of arithmetic processing andcontrols the overall operation of the electronic watch 1. The host CPU41 reads out control programs from the ROM 42, loads the programs to RAM43, and execute various types of operation processing such as arithmeticcontrol and display related to displaying date/time and other variousfunctions. Furthermore, the host CPU 41 instructs the satellite wavereception and processing unit 60 to operate and receive radio waves fromthe positioning satellites and obtain date/time information and locationinformation computed based on the received content.

The ROM 42 is a mask ROM, a rewritable non-volatile memory, or the like,and stores control programs and initial configuration data. The controlprograms include a program 421 used to control various types ofprocesses for obtaining various types of data from the positioningsatellites.

The RAM 43 is a volatile memory such as SRAM or DRAM. The RAM 43 storesdata temporarily by providing working memory space for the host CPU 41and stores various types of configuration data. The various types ofconfiguration data include the settings for the home city where theelectronic watch 1 is used and the settings related to whether daylightsavings time should be implemented when computing and displayingdate/time. A part or the whole of the various types of configurationdata stored in the RAM 43 may be stored in a non-volatile memory.

The oscillator circuit 44 generates and outputs a predeterminedfrequency signal. A crystal oscillator is used in the oscillator circuit44, for example.

The frequency divider circuit 45 takes an input frequency signal fromthe oscillator circuit 44 and generates an output frequency signal usedby the counter circuit 46 and the host CPU 41. It may be possible forthe frequency of this output signal to be changed on the basis of thesettings of the host CPU 41.

The counter circuit 46 measures the current date/time by counting theinput count of the prescribed frequency signal (clock signal) inputtedfrom the frequency divider 45 and adding that value to the defaultvalue. The counter circuit 46 may be a unit that changes the valuestored in the RAM using software or may be equipped with a dedicatedcounter circuit. Although there is no particular limit to the date/timecounted by the counter circuit 46, it is either the cumulative timemeasured from a predefined timing, UTC date/time (coordinated universaltime), the date/time of the home city set in advance, or the like. Thedate/time measured by the counter circuit 46 does not always need to bekept in “year month day, hour minute second” format. A clock signalinputted into the counter circuit 46 from the frequency divider circuit45 is slightly off from the precise pace at which time passes. Themagnitude of the error (rate) per day changes depending on operatingconditions and temperature and is normally within +/−0.5 seconds.

The display unit 47 includes a display screen such as a liquid crystaldisplay (LCD) or an organic EL (electroluminescent) display and executesdisplay operations related to date/time and various types of functionsby using dot matrix display, segment display, or a combination thereof.

Based on a control signal from the host CPU 41, the display driver 48outputs a driver signal that matches the type of the display screen tothe display unit 47, thereby instructing the display unit to performdisplay on the display screen.

The operation unit 49 receives an input operation by the user andoutputs to the host CPU 41 an electronic signal that corresponds to theinput operation as an input signal. The operation unit 49 includes apush-button switch or a crown, for example.

Alternatively, the display unit 47 and the operation unit 49 may beintegrated. This integration can be achieved by first mounting the touchsensor on the display screen of the display unit 47, and second byenabling the display screen to function as a touch panel that outputsoperation signals that correspond to contact point and contact mannerinvolved in the contact behavior of the user detected by the touchsensor.

The power source unit 50 includes batteries and provides power needed inthe operation of the electronic watch 1 to respective units of the watchat a given voltage. A solar panel and a rechargeable battery are used asthe batteries for the power source unit 50. The solar panel generateselectromotive force using incident light and supplies power to variousunits such as the host CPU 41. Also, when the solar panel generatessurplus power, the power is stored in the rechargeable battery. When thepossible amount of power that the solar panel can generate based on theamount of incident light available from an external source is less thanthe amount of power being consumed, the secondary battery suppliespower. Alternatively, a non-rechargeable battery such as a buttonbattery can be used as the battery.

The satellite wave reception and processing unit 60 is tuned to theradio waves from the positioning satellites via the antenna AN andreceives the radio waves by identifying and capturing a C/A code (pseudorandom noise) unique to each of the positioning satellites. Then, thesatellite wave reception and processing unit demodulates and decodesnavigation messages sent by the positioning satellites to obtainnecessary data. The satellite wave reception and processing unit 60includes a module CPU 61 (a processor including in terms of software orhardware or both) an expected code sequence generation unit 611, acomparison unit 612, a date/time acquisition unit 613, an error judgmentunit 614, a control unit 615, an error range calculation unit 616), amemory 62, a storage unit 63 (a history storage unit 632, an arraystorage unit 633), an RF unit 64, a baseband converter unit 65, ancapturing and tracking unit 66, and the like. The module CPU 61 includesthe expected code sequence generation unit 611, the comparison unit 612,the date/time acquisition unit 613, the error judgment unit 614, thecontrol unit 615, and the error range calculation unit 616. The expectedcode sequence generation unit 611, the comparison unit 612, thedate/time acquisition unit 613, the error judgment unit 614, the controlunit 615, and the error range calculation unit 616 may be a single CPU,there may be a separate CPU for carrying out each operation, or eachoperation can be carried out by the host CPU 41. The data stored in thestorage unit 63 include programs 631, the history storage unit 632, andthe array storage unit 633. The programs 631, the history storage unit632, and the array storage unit 633 may be a single storage unit, aseparate storage unit may be provided for each unit, or the programs 631may be included in the data stored in the ROM 42, and the historystorage unit 632 and the array storage unit 633 may be included in thedata stored in the RAM 43.

The module CPU 61 controls the operations of the satellite wavereception and processing unit 60 according to control signals andconfiguration data input from the host CPU 41. The module CPU 61 readsout the necessary programs and configuration data from the storage unit63, operates the RF unit 64, the baseband converter unit 65 and thecapturing and tracking unit 66, and receives and demodulates the radiowaves from respective positioning satellites to obtain the date/timeinformation. In addition to obtaining the date/time information bydecoding the received radio waves, the module CPU 61 can compare andmatch the demodulated incoming code sequence with a code sequence set inadvance for comparison (comparison code sequence), without decoding theincoming code sequence, to see if the two code sequences agree.

The memory 62 is a RAM that provides working memory space for the moduleCPU 61 in the satellite wave reception and processing unit 60. Also, thememory 62 temporarily stores the code sequence data that is generatedand used to contrast and compare with the incoming code sequence.

The storage unit 63 stores various types of configuration data relatedto GPS positioning and the history of position measurements. Varioustypes of non-volatile memories such as flash memory or EEPROM(electrically, erasable and programmable read-only memory) are used forthe storage unit 63. Data stored in the storage unit 63 includes orbitalinformation (ephemeris), approximate orbital information (almanac), andthe date/time of prior measurements as well as the locations ofsatellites at the time of those measurements. In addition, the storageunit 63 stores, as a time difference table, data about different timezones around the world and whether daylight saving time is in effect.Once the position measurement is taken, the time difference table isused as a reference to determine local time data such as the timedifference between the coordinated universal time (UTC) in the standardtime obtained at the current location or the data about whether daylightsaving time is in effect.

The storage unit 63 stores the programs 631 that are used to execute aposition measurement to determine the local time data. The module CPU 61reads out and executes the program 631.

The RF unit 64 receives satellite waves in L1 frequency (1.57542 GHz forGPS satellites), selectively filters and amplifies the incoming signalfrom the positioning satellites, and converts the incoming signal to theintermediate frequency. The RF unit 64 includes an LNA (low noiseamplifier), a BPF (band pass filter), a local oscillator, a mixer, andthe like.

By applying the C/A code of the respective positioning satellites to theintermediate frequency obtained by the RF unit 64, the basebandconversion unit 65 acquires the baseband signal, or in other words thecode sequence (incoming code sequence) related to navigation message(prescribed format). The capturing and tracking unit 66 computesrespective correlation values of the C/A code of the respectivepositioning satellites at respective phases with respect to theintermediate frequency signal obtained by the RF unit 64. By determiningthe peak correlation value, the capturing and tracking unit 66identifies the signal that is being received from the positioningsatellites and the phase of the signal. The capturing and tracking unit66 also sends feedback about the phase data to the baseband conversionunit 65 in order to continuously acquire the code sequence related tothe navigation messages from the positioning satellite by using the C/Acode of the identified positioning satellite and the phase of the C/Acode.

The wave reception unit is constituted by the RF unit 64, the basebandconversion unit 65, and the capturing and tracking unit 66.

The power source unit 50 supplies power directly to the satellite wavereception and processing unit 60 and is turned ON and OFF by a controlsignal from the host CPU 41. In other words, the satellite wavereception and processing unit 60 is turned OFF when the unit is notreceiving radio waves from the positioning satellites or performingcomputational operations related to obtaining date/time or determiningsatellite position, separately from units that are always in operationsuch as the host CPU 41. Also, it is possible to switch, based on aninput operation to the operation unit 49, the satellite wave receptionand processing unit 60 according to the present embodiment to go intoairplane mode, which is a setting used to control use of radio wavesduring flight. In airplane mode, the host CPU 41 blocks the satellitewave reception and processing unit 60 from turning ON. Alternatively, inairplane mode, just the radio wave reception operation in the satellitewave reception and processing unit 60 may be blocked.

Now, the format of the navigation message sent from the GPS satellitesis described.

GNSS is a system in which a plurality of positioning satellites aredistributed in a plurality of orbits. The system enables signals fromthe plurality of different positioning satellites to be simultaneouslyreceived at respective locations on the surface of the earth. Byobtaining information about the real-time satellite positions anddate/time information that are sent from four or more positioningsatellites (only three satellites are needed if an object to be locatedis assumed to be on the surface of the earth), it becomes possible todetermine the coordinate position in three-dimensional space of thesatellites and date/time. This determination is based on the acquireddata and the error in the timing of data acquisition, or in other wordsthe difference in how long the signal from the respective positioningsatellites takes to travel (distance).

The positioning satellites transmit date/time information, satellitelocation information, and status information such as the health of thesatellites. This information is transmitted by a spread spectrumtechnique using a C/A code (pseudo-random noise). Each satellitenavigation system sets its own signal transmission format (navigationmessage format).

FIG. 2 is a view used to describe the format of navigation messagetransmitted from the GPS satellites.

In GPS, each of the GPS satellites transmits a total of 25 pages of dataframes, each of which is 30-seconds long, and outputs the entirenavigation message in a period of 12.5 minutes. In GPS, each of the GPSsatellites uses a unique C/A code. A C/A code contains 1023 code bits(chips) and is transmitted at 1.023 MHz with a period of 1 ms. Thebeginning of the chip sequence is synchronized with the internal clockof the GPS satellites. By detecting a phase shift of each GPS satellite,the signal travel time, or in other words the phase shift thatcorresponds to the distance between the GPS satellite and the presentlocation (pseudo distance, distance index value), is detected.

Five subframes (6 seconds) constitute each of the data frames. Ten words(each 0.6 seconds long, word 1 to word 10 in that order) constitute eachof the subframes. The data format in word 1 and word 2 is the same inall subframes. In word 1, the first 8 bits contains a preamble, which isan invariant code sequence, followed by a 14-bit TLM message. Afterthis, 1-bit integrity status flag, 1-bit reserved bit, and 6-bit paritydata are arranged. Word 2 begins with 17-bit TOW-count (also known asZ-count), which indicates the time elapsed since the beginning of theGPS week, followed by alert flag and anti-spoof flag each having 1-bit.Then the subframe ID, which indicates the subframe number (periodnumber), is represented by 3-bits. After this, 2 bits used for matchingparity data is arranged followed by 6-bit parity data.

Different subframes contain different data after word 3. Word 3 ofsubframe 1 begins with the 10-bit WN (week number). Subframes 2 and 3mainly include the ephemeris (precise satellite orbital information),and part of subframe 4 and subframe 5 transmit the almanac (approximateorbital information).

Next, operations involved in acquiring date/time information in theelectronic watch 1 according to the present embodiment are described.

Conventionally, to obtain date/time information, WN of subframe 1 andthe TOW count from each of the subframes need to be received, decodedaccording to the format of the navigation message, and the date/timeneeds to be computed. However, if the date or the like is already knownand figuring out which week the present date/time corresponds to isunnecessary, it becomes possible to determine the date/time by obtainingonly the value of the TOW count and timing at which this is synchronizedand combining those with already known information. As described above,if the error in date/time counted by the counter circuit 46 (rate) issufficiently small, it is extremely unlikely that the error becomesgreater than one day. Thus, in most cases, the reception of WN can beomitted. In the electronic watch 1 according to the present embodiment,when obtaining date/time information by decoding incoming code sequence,if the time that has elapsed since the last acquisition of date/timeinformation is no greater than a prescribed period, one month, forexample, then the reception of the WN can be omitted.

However, to obtain the value of the TOW count, which part of navigationmessage code sequence is being received needs to be identified. Whendemodulating the incoming signal, if the TOW count code sequence is notaccurately identified, inaccurate date/time would be obtained. Thus,normally, data that guarantee the accuracy of the code sequence are alsoobtained.

In the electronic watch 1 according to the present embodiment, themodule CPU 61 of the satellite wave reception and processing unit 60generates in advance an expected code sequence, which the unit expectsto receive, in a prescribed bit length. The module CPU 61 determineswhether the accurate date/time was received by comparing the actuallyreceived code sequence with the expected code sequence. The watch issynchronized with the accurate present date/time based on the timingwhen the match between the expected code sequence and the incoming codesequence is detected (timing of detection). In other words, the accuratedate/time information is obtained using the timing of detection of theexpected code sequence and the date/time indicated by the expected codesequence.

The expected code sequence includes invariant codes that do not changewith transmission period such as a preamble or reserved bits. Theexpected code sequence also includes a part or whole of code sequencesthat vary according to changes in date/time, or in other words accordingto the transmission interval of subframes, such as a TOW count, asubframe ID, or a WN. Code bits that are “0” in normal operation andthat are not desirable when “1” such as alert flags or anti-spoof flagsare not possible to predict in advance. However, they may be assumed tobe “0” and added to the expected code sequence.

Furthermore, a different code sequence can be used as the expected codesequence. Code sequences that were received during the most recentreception or the previous several receptions of satellite waves and thereception date/times (reception history) thereof can be stored in thestorage unit 63. Among these stored code sequences, code sequences suchas the telemetry message of word 1, for which changes from the previousreception cannot be predicted entirely according to the location of thecode within the navigation message, and which can normally be thought toremain the same when the time elapsed from the last reception is short,can be used as the expected code sequence. Alternatively, part or wholeof the telemetry message may be combined with the invariant codesequence or the code sequences that change with the transmission perioddescribed above to form the expected code sequence. Determining whethera code sequence can be used for the expected code sequence is not basedsimply on the time elapsed from the previous reception. Additionalrequirements such as the code that has not changed at all in multiplereceptions needing to be used may be included.

Similarly, if data related to the orbit of positioning satellites suchas almanac data is obtained and the time until the next update has notyet elapsed, then the orbital data can also be included in the expectedcode sequence.

In particular, it is preferable to generate an expected code sequenceusing the date/time counted by the counter circuit 46 such that at leasta part of the least significant bit (LSB) side of the TOW count and thesubframe ID, which change reflecting the time transmitted at eachtransmission period (information dealing with time), be included in theexpected code sequence. By doing this, a possibility ofmisidentification due to the difference of one transmission period (onesubframe) can be further reduced. If the error is estimated to be sosmall such that the situation in which a different subframe is receivedas described above is inconceivable, a timing error in the date/timedata of the counter circuit 46 can be adjusted solely on the basis ofthe detection timing. This error can be estimated based on thepercentage of the error in the date/time counted by the counter circuit46 (rate) and the time elapsed since the time of the previous date/timeadjustment, for example. As described above, when the rate of thecounter circuit 46 is 0.5 seconds per day, the estimated rate 30 daysafter the last (most recent) date/time adjustment is 15 seconds.

Parity data arranged at the 25th to 30th bit of each word are computedbased on the parity code of the 29th bit and the 30th bit of theprevious word and respective necessary bit data out of the 1st to the24th bit of the same word. Thus, it is difficult to predict the 29th-bitand 30th-bit parity codes of the previous word, and, in the electronicwatch according to the present embodiment, these parity data are notincluded in the expected code sequence.

Code sequences that are compared and identified do not all need to becontinuous and can be made of a plurality of different code sequences.However, it is preferable that the entire reception length be shorterthan that in a normal short-time reception such as 3-word reception (90bits), for example. Furthermore, it is preferable that the length beshorter than 60 bits, which the length of (data block length) the sum ofthe two words, word 1 and word 2, that include the preamble, the TOWcount containing information about the present time, and the parity datawith respect to the TOW count (error correction code).

Here, when the expected code sequence is compared with the incoming codesequence, the code bits in bits 1 to 24 of the code sequence (code bitsother than the parity data) that correspond to the data being actuallytransmitted by the GPS satellites are inverted for each word accordingto the parity data code (inversion code) of the last bit (the 30th bit)of the previous word. In other words, if the inversion code is 0, thecode bits in bits 1 to 24 of the next word are transmitted unchangedcorresponding to the data to be transmitted. In contrast, if theinversion code is 1, the code bits in bits 1 to 24 of the next wordbecome a code sequence in which all of the code sequences that containthe data to be transmitted are inverted. During comparison, one of thefollowing processes is executed: (1) a plurality of code sequences basedon the transmitted data that is predicted according to the respectiveinversion codes, and they are compared respectively; (2) the expectedcode sequence and the incoming code sequence are tested word by word fora perfect agreement or disagreement, and in case of a perfectdisagreement, the inversion code of the word before the word in questionis identified, and whether the inversion code is 1 is checked; (3) ifthe expected code sequence and the incoming code sequence eitherperfectly agree or disagree, in both cases, it is assumed that theexpected code sequence was found in the incoming code sequence.

In case (1), the processing load related to comparison increases. Incase (2), the processing needed after the detection of the expected codeincreases. In case (3), the possibility of misidentification increases.Thus, one of these processes may be chosen appropriately according tothe preference of the user, the capability of the electronic watch 1, orthe like.

When determining whether the expected code sequence is detected(received), if a code sequence identical to the expected code sequenceappears in locations other than the locations where the expected codesequence is expected to appear normally, an incorrect date/time can beobtained. The likelihood of the code sequence identical to the expectedcode sequence appearing in unexpected locations increases as theexpected code sequence becomes shorter. As the expected code sequencebecomes longer, the reception time becomes longer. In view of thisproblem, in the electronic watch 1 according to the present embodiment,the probabilities of occurrence of 0 and 1 in each of the binary codebits are simplified by assuming that the probabilities are the same at½, respectively. The length of the expected code sequence is set bydetermining the reference values for the number of and the probabilityof occurrence of the expected code sequence such that these values aresufficiently small in proportion to the number of times and frequencythe electronic watch 1 is expected to receive date/time data within itsproduct cycle.

In other words, because the probability of occurrence of a given N-bitcode sequence is (½)^(N), it is acceptable if this probability ofoccurrence is sufficiently small. To keep the probability of occurrencebelow 10⁻⁸, N needs to be greater than or equal to 27, and to keep theprobability of occurrence below 10⁻⁶, N needs to be greater than orequal to 20, for example. Assuming that the product life cycle of theelectronic watch 1 is 20 years and six reception operations are executedper day, the expected number of times the watch receives a signalbecomes 43830 times. Thus, if N=20, the probability of even onemisidentification during the product life cycle is about 4.2%, and ifN=27, the probability of misidentification is about 0.033%. Thereference value of this probability of occurrence may be set in advance,or the watch may come with the ability to set the standard probabilitydirectly or indirectly based on the user input to the operation unit 49(there may be various reference values corresponding to expressions suchas “hard,” “normal,” or “weak,” for example).

FIG. 3 is a flowchart showing control steps involved in obtaining andprocessing date/time by the host CPU 41 in the electronic watch 1according to the present embodiment. The date/time obtaining process isactivated when an input operation of executive instruction to theoperation unit 49 by the user is detected or when criteria such as thepreset reception time or the reception timing are met.

Once the date/time obtaining process begins, the host CPU 41 activatesthe satellite wave reception and processing unit 60 (step S101). Thehost CPU 41 sends to the satellite wave reception and processing unit 60two pieces of information: one about the setting that indicates that theobject of the initial data retrieval is date/time information, andanother about the date/time counted by the counter circuit 46 (stepS102). Then, the host CPU 41 is put on standby for data output from thesatellite wave reception and processing unit 60. During the standby, thehost CPU 41 may instruct the display unit 47 to show that the host CPU41 is receiving data.

After receiving a signal from the satellite wave reception andprocessing unit 60, the host CPU 41 obtains date/time information (stepS103). Then, the host CPU 41 suspends the satellite wave reception andprocessing unit 60 (step S104) and adjusts the date/time counted by thecounter circuit 46 (step S105). The host CPU 41 updates the receptionhistory stored in the RAM 43 (step S106). Then, the host CPU 41 ends thedate/time obtaining process.

FIG. 4 is a flowchart showing control steps involved in the date/timeinformation reception process by the module CPU 61 in the electronicwatch 1 according to the present embodiment. The date/time informationreception process is activated when the host CPU 41 activates thesatellite wave reception and processing unit 60 and the data outputtedfrom the host CPU 41 in the processing involved in step S102 isdate/time information.

Once the date/time information reception process is activated, themodule CPU 61 conducts an initial setting and an operation check. Themodule CPU 61 obtains the date/time information outputted from the hostCPU 41 in the processing involved in step S102 and then determines thecontents of the navigation message to be received and the start timingand the duration of the reception of the determined content (step S201).

The module CPU 61 generates the expected code sequence for the part ofthe code sequence that needs to be identified during the set receptionperiod (step S202). When it is possible to change the length andlocation of the expected code sequence, the module CPU 61 obtains fromthe storage unit 63 the setting relevant to the change and generates anappropriate expected code sequence. The module CPU 61 begins to receivewaves from the GPS satellite at an appropriate timing (step S203) andcaptures the waves from the GPS satellites that are possible to capture(step S204). The module CPU 61 attempts to use the reverse spreadspectrum technique by applying the C/A code of the respective GPSsatellites to the signal obtained from the received waves while shiftingthe phase of the C/A code and to detect and capture the signal from theGPS satellites.

Once the signal from a GPS satellite is captured, the module CPU 61obtains the code sequence of the incoming data (incoming code sequence)while tracking the GPS satellite (step S205). The module CPU 61 comparesthe prescribed bit length that corresponds to the array width of theexpected code sequence in the incoming data with the generated expectedcode sequence (step S206). The module CPU 61 determines whether aperfect agreement between parts of the incoming data and the expectedcode sequence was detected (step S207). If no perfect agreement isdetected (“NO” in step S207), the module CPU 61 determines whether 6seconds (the transmission interval of one subframe) or longer haselapsed since the comparison with the expected code sequence began. Inother words, the module CPU 61 determines whether the beginning of theportion of the incoming code sequence that has a fixed bit length and issupposed to be compared with the expected code sequence has shifted by 6seconds or longer (step S208). When it is determined that 6 seconds hasnot elapsed (“NO” in step S208), the processing sequence of the moduleCPU 61 moves onto step S210.

If it is determined that 6 seconds or longer has elapsed (“YES” in stepS208), the module CPU 61 generates an expected code sequence thatcorresponds to the next subframe (in other words, an expected codesequence generated based on the time after the transmission period ofthe previous subframe) and updates the old expected code sequence (stepS209). Then the process of the module CPU 61 moves onto step S210.

Once in the process in step S210, the module CPU 61 determines whetherthe time elapsed since starting the reception is longer than a timeoutperiod (step S210). The timeout period may be set to the time thatcorresponds to a predetermined number of subframes or the like andchanged appropriately according to the battery capacity at the start ofthe reception or the elapsed time since the last reception. If it isdetermined that the timeout period has not elapsed (“NO” in step S210),the process in the module CPU 61 goes back to step S205, and the moduleCPU 61, while continuing to obtain the incoming data, shifts the rangeof the code sequence that has the prescribed bit length and is supposedto be compared with the expected code sequence in step S206 according tonewly obtained received data. If it is determined that the timeoutperiod has elapsed (“YES” in step S210), the processing sequence of themodule CPU 61 moves on to step S212.

If the determination process in step S207 determines that a perfectagreement between parts of the incoming data and the expected codesequence is detected (“YES” in step S207), the module CPU 61 obtains thedate/time that corresponds to the matched expected code sequence andoutputs to the host CPU 41 this obtained date/time information insynchronization with the start timing of the date/time (in other words,the timing at which the next subframe begins) (step S211).

Once moved on to the process in step S212, the module CPU 61 stops thesatellite wave reception and processing unit 60 (step S212). Then, themodule CPU 61 ends the date/time obtaining process.

FIG. 5 is a view showing the result of a comparison between the datareception (tracking) time required by the electronic watch 1 accordingto the present embodiment when detecting perfect agreement of a 28-bitcode and the data reception time required by a conventional three-wordreception method (including parity verification). The horizontal axisrepresents the wave strength (power dBm) of an input signal from the GPSsatellites, and the vertical axis shows the time (sec) needed to obtainthe necessary data. Here, the data reception time related to theconventional three-word reception method involves a case in which anerror is detected when checking for parity for three words, word 1 to 3,and it is decided to continue to receive data for 6 more seconds untilword 1 to 3 of the next subframe is received. The data reception timerelated to the conventional three-word reception indicates the timeactually measured from when the waves from the GPS satellites arecaptured to when the tracking of the captured waves from the GPSsatellites ends. The data reception time taken by the reception methodaccording to the present embodiment is based on the assumption that anerror occurs in some random code location with the same error rate thatoccurs when identifying a code related to the actual measurement. Inaddition to this assumption, if an error occurs in identifying a code inthe expected code sequence and a perfect agreement is not detected, itis also assumed that the data reception is continued for 6 more secondsuntil the code sequence in the next subframe in the identical locationis transmitted. The data reception time is estimated on the basis ofthese assumptions.

As shown by the dotted line (b), in the conventional reception method,when the power of the waves of the input signal strength is below −140dBm, as the signal strength decreases down to −144 dBm, the timerequired for data reception increases up to about several times longer.In contrast, the data reception time in the electronic watch 1 accordingto the present embodiment shown with the solid line (a) does notincrease much (within about a few dozen percent), even when the signalstrength falls to about −144 dBm, and accurate date/time information isobtained quickly.

As described above, the electronic watch 1 according to Embodiment 1includes the RF unit 64, the baseband conversion unit 65, and thecapturing and tracking unit 66, each of which are part of the satellitewave reception and processing unit 60 that receives satellite waves fromthe positioning satellites and extracts the incoming code sequenceformatted in a prescribed format from the satellite waves, as well asthe module CPU 61. The module CPU 61, functioning as the expected codesequence generation unit 611, generates an expected code sequence thatis expected to be part of the incoming code sequence within the incomingcode sequence by sequentially comparing the generated expected codesequence with the incoming code sequence sequentially to detect theexpected code sequence within the incoming code sequence. The module CPU61 functions as the date/time acquisition unit 613 determines thepresent date/time in accordance with the timing of the detection. Here,the expected code sequence includes codes that can change with asubframe period during which information related to time such as the TOWcount and the subframe ID that contain information about the presenttime, which are formatted in the navigation message format andtransmitted from the positioning satellite, which is the data source.

In this way, unlike the situation in which parity bits are used,unnecessary bit data do not need to be verified. Because theverification of the target bit data used for comparison is the onlything needed to obtain accurate date/time information, accuratedate/time information can be obtained more efficiently.

Also, generating an expected code sequence before and during thereception of satellite waves and comparing the expected code with theincoming code sequence make unnecessary the decoding of the incomingcode sequence. Thus, after the expected code sequence is detected in theincoming code sequence, date/time can be obtained swiftly.

In particular, the chance of needing to re-receive the data when thereception condition is bad can be reduced. Thus, the rate of increase inreception time under unfavorable reception condition can be reduced.Furthermore, the increase in power consumption used for reception can becurtailed.

The watch is equipped with the counter circuit 46 that counts date/time,and the module CPU 61 functioning as the date/time acquisition unit 613can adjust the date/time by merely obtaining the timing error in thedate/time counted by the counter circuit 46 when the expected codesequence is detected in the incoming code sequence. Thus, the processinvolved in a situation in which an error in units of subframes is notexpected can be simplified, and the date/time can obtained more easilyand efficiently.

The watch is equipped with the counter circuit 46. Based on thetime/date counted by the counter circuit 46, the module CPU 61functioning as the expected code sequence generation unit 611 generatesan expected code sequence that includes at least a prescribed number oflow-order bits that are part of code segments such as the TOW count orthe subframe ID that indicate information related to time. The moduleCPU 61 functioning as the date/time acquisition unit 613 obtains thecurrent date/time by combining the date/time counted by the countercircuit 46 and the timing when the expected code sequence is detected inthe incoming code sequence. Thus, concerns about misidentifying a codesequence because of an error in units of subframes can be reduced.

Because the number of bits in the TOW count and the subframe ID isgreater than the number of bits in the invariant code sequence, use ofthe expected code sequence reduces concerns about misidentification andincreases accuracy.

When a period corresponding to one subframe (6 seconds) elapses withoutthe expected code sequence being detected in the incoming code sequence,the module CPU 61 functioning as the expected code sequence generationunit 611 renews the expected code sequence based on information relatedto time contained in the subframe subsequent to the subframe mentionedabove. Thus, even when the detection fails due to conditions such asweak reception signal or the presence of too much noise, the detectionof the expected code sequence can be easily attempted in the subsequentsubframe.

Information related to time included in an expected code sequenceincludes a value that corresponds to the subframe ID, which is a periodnumber that indicates the number of the transmission period. In otherwords, it is possible to presume values that change with time, not justfor the TOW count but for the subframe ID as well. Thus, the subframe IDcan be used in the expected code sequence with the same effect as theTOW count, depending on the number of bits used in the expected codesequence. By simultaneously using TOW count and the subframe ID in theexpected code sequence, the occurrence of misidentification can becurtailed more effectively. Also, a long expected code sequence can begenerated effectively and proportionally to the increase in the numberof received bits, because the subframe ID is located in word 2 next tothe TOW count.

The length of the expected code sequence is determined such that theprobability of the expected code sequence appearing in a place otherthan the normally expected place within the incoming code sequence isbelow a predetermined reference value. Thus, the possibility of a shortexpected code sequence appearing in a place other than the normallyexpected place within the incoming code sequence, which causes amisidentification, can be reduced to a necessary level.

In particular, the probability of occurrence of the expected codesequence in an unexpected place is calculated assuming that theoccurrence probabilities of 0 and 1 in each of the binary bits that formthe incoming code sequence are ½, respectively. Thus, it is possible toset the length of the expected code sequence with ease and based on acalculation criterion that does not deviate too much from the actualprobability.

The reference value is determined based on the number of times the wavereception unit is expected to receive satellite waves. A strictcriterion value can be set for a radio-controlled timepiece that is usedfrequently and for extended periods of time, and a soft criterion can beset for a radio-controlled timepiece that is used less frequently andfor short periods of time. In either case, the number ofmisidentifications can be kept within a range that does not causeserious problems, and date/time can be obtained most efficiently.

Also, the electronic watch is equipped with the operation unit 49 thatreceives the user operation, and the reference value can be setaccording to the setting input to the operation unit. Thus, depending onthe wishes of the user, the frequency and number of misidentificationsand the time needed to receive satellite waves can be balancedappropriately according to usage conditions or the like.

The length of the incoming code sequence is set shorter than the lengthof the data block that includes the preamble, the TOW count, and theparity data for the TOW count. Thus, the shortest reception time, withinwhich no problems with the status of radio wave reception and repeatedreception occur, can be made shorter than that for a standard 2-wordreception.

The module CPU 61 functioning as the expected code sequence generationunit 611 generates the expected code sequence that corresponds to aplurality of different code sequence segments in the incoming codesequence. Thus, even if there are codes in the middle of the incomingcode sequence that are difficult to predict, those can be skipped, andan expected code sequence that has an appropriate length as a whole canbe generated.

The module CPU 61 functioning as the expected code sequence generationunit 611 generates an expected code sequence that includes the preamblethat is contained in each transmission period that corresponds to thesatellite waves to be received, or in other words the preamble that incontained within a subframe in the case of GPS satellites. Ahigh-precision timing detection can be carried out reliably andefficiently by combining the preamble, which is an invariant codesequence, with the code sequences that change at each transmissionperiod.

A unit block consists of bits 1 to 24 of each word. The transmitted codesequence embedded in the navigation message that carries the informationcontent transmitted from the GPS satellites transmitting satellite wavesincludes an inversion code that determines, with respect to each unitblock, whether to invert each code bit in the unit block beforetransmission. The module CPU 61 functioning as the expected codesequence generation unit 611 generates both an expected code sequencethat includes a code sequence in which code bits in each unit blockwithin the expected code sequence are inverted and another expected codesequence that includes a code sequence in which respective code bits arenot inverted. The module CPU 61 functioning as a comparison unit 612compares each of the generated expected code sequences with the incomingcode sequence.

In this way, the expected code sequence can be easily detected from theincoming code sequence regardless of whether the code bits in each unitblock were actually inverted.

Also, the module CPU 61 functioning as the expected code sequencegeneration unit 611 generates an expected code sequence that includes atleast one specific flag related to the transmission status such as alertflag, anti-spoof flag, or integrity status flag. These code bits are notnecessarily predictable. However, generating the expected code sequenceon the assumption that these code bits are unproblematic avoidsunintentionally receiving date/time from corrupted incoming data. Also,under normal circumstances, increasing the number of bits in theexpected code sequence improves the accuracy. In particular, becausealert flag and anti-spoof flag are arranged between the TOW count andthe subframe ID, the relative number of bits can be increased withoutincreasing reception time. By virtue of this fact, the date/timeinformation can be obtained while efficiently improving the receptionaccuracy.

Also, the electronic watch has the storage unit 63 and uses the storageunit 63 as the history storage unit 632, which stores the receptionhistory of the most recent satellite waves, and as the array storageunit 633, which stores the code sequence obtained during the receptionof the most recent satellite waves. The module CPU 61 functioning as theexpected code sequence generation unit 611 determines which parts of thecode sequence stored in the storage unit 63 functioning as the arraystorage unit 633 do not change within the time elapsed since thereception of the most recent satellite waves. This determination isbased on the type of data related to the code sequence, and at least apart of the selected code sequence is included in the expected codesequence. In other words, a code sequence such as the telemetry message,which is not necessarily predictable but does not change significantlyunder normal circumstances, can be stored and used for the expected codesequence when the elapsed time from the reception of the last satellitewaves is short. In this way, the detection accuracy can be improvedwithout increasing the chance of creating problems in detecting theexpected code sequence in the incoming code sequence.

By using the method of obtaining date/time information described above,the date/time information can be obtained efficiently even in thesituation in which the date/time information is obtained using aplurality of CPUs or radio wave reception devices. Thus, the receptiontime can be shortened, and the accuracy of date/time acquisition can beimproved in a balanced way that takes into account the capability of theCPUs and the radio wave reception devices, the preference of the user,and the like.

The module CPU 61 (processor) of a computer (the satellite wavereception and processing unit 60), which is equipped with a wavereception unit that receives satellite waves and identifies an incomingcode sequence in a prescribed format that corresponds to the receivedsatellite waves, can be programmed to carry out the control stepsinvolved in the reception and processing of date/time information foracquiring date/time, as described above. Using the module CPU and theseprograms, various types of computer terminals capable of receiving radiowaves from the positioning satellites can be used to efficiently obtaindate/time information in accordance with the use and capabilities of thecomputer terminals.

Embodiment 2

Next, an electronic watch according to Embodiment 2 of the presentinvention is described.

The configuration of an electronic watch 1 according to Embodiment 2 isthe same as the configuration of the electronic watch 1 according toEmbodiment 1. Thus, the same reference characters are used, and thedescription thereof is omitted.

Next, the operations involved in obtaining date/time information in theelectronic watch 1 according to Embodiment 2 are described.

When comparing the incoming code sequence with the expected codesequence, the electronic watch 1 according to the present embodimentadjusts the criteria and timing of the comparison to prevent a wrongtransmission period (subframe) from being used for comparison. Otheroperations are identical to those in the electronic watch 1 according toEmbodiment 1, and the detailed description of the identical operationsthereof is omitted.

As described above, a counting error within ±0.5 seconds per day occursin a counter circuit 46 depending on temperature and operationconditions. As time passes from the most recent timing when thedate/time counted by the counter circuit 46 was adjusted, the maximumerror in the date/time counted by the counter circuit 46 continues toincrease. Thus, the chance that the expected sequence and the incomingcode sequence belong to different transmission periods (subframes)increases. The electronic watch 1 according to the present embodiment isset to begin reception at a specific timing. The timing is set such thatthe period during which a code sequence that necessarily agrees with theexpected code sequence is transmitted falls within the 6-seconds windowmeasured from when the watch starts comparing the incoming code sequenceand the expected code sequence. The timing of the last date/timeadjustment can be stored in the storage unit 63 in advance. At the startof the date/time operation, the module CPU 61 can determine whether atleast 6 days have elapsed since the last date/time adjustment. In otherwords, the criterion is whether the maximum absolute value of theestimated error is equal to or greater than 3 seconds with a total of 6seconds or longer, whether it is longer than half the length of asubframe (transmission period), which is a benchmark time set accordingto the transmission period (i.e., whether the total sum is longer thanthe length of a subframe). If the elapsed time is longer than thebenchmark time, it is switched to other methods of obtaining date/time.In that case, a conventional 3-word reception is performed, the codesequence related to the navigation message is decoded, and the date/timeis obtained, for example.

FIGS. 6A and 6B are views used to describe the setting for when to startreceiving data.

Here, an example in which the error of date/time counted by the countercircuit 46 is estimated to be at most 2 seconds is used for description.

As shown in FIG. 6A, when the reception begins at second 00 of a givenhour and minute in the date/time (UTC) measured by the counter circuit46, the moment at which the reception begins corresponds to second 58 orlater of the previous minute in accurate timing or any moment within 2seconds of second 00 in the same hour and minute kept by the countercircuit 46 (the thick horizontal line in the upper row). Due to the useof leap seconds (the description here assumes that the difference is +17seconds), there is a gap between the date/time transmitted from the GPSsatellites (GPS date/time) and UTC date/time. Thus, expressed in GPSdate/time, the period during which the reception can begin is betweensecond 15 and second 19 of the same minute measured by the countercircuit 46. If it takes 2 seconds to capture the waves from the GPSsatellites, the moment at which it becomes possible to identify andobtain a code sequence after completing the capturing operation, inother words the earliest moment at which the beginning of the incomingcode sequence can be compared with the expected code sequence (referredto as the timing for starting comparison), is second 17 or later butbefore second 21 of the same minute (see the thick horizontal line inthe middle row).

The transmission of each subframe data transmitted from the GPSsatellites begins at second 0 of every minute in GPS time with a periodof 6 seconds. Suppose that the expected code sequence is set as havingthe prescribed number of bits starting from the beginning (preamble) ofeach subframe (28 bits that include the preamble, the TOW count, and thesubframe ID) and that the accurate time for starting reception (UTC) isbetween second 58 and second 59. In that case, the incoming codesequence (the thick horizontal line on the left in the lower row) thatbelongs to the subframe including the preamble that begins to bereceived at second 18 in GPS time is compared with the expected codesequence. On the other hand, if the accurate time for starting reception(UTC) is between second 59 to second 2, the incoming code sequence (thethick horizontal line on the left in the lower row), which is thesubframe including the preamble that begins to be received at second 24in GPS time, is compared with the expected code sequence. As a result,if the time for starting reception falls in this range, the values ofthe TOW count and the subframe ID in the expected code sequence and theincoming code sequence differ, and the expected code sequence and theincoming code sequence will not match perfectly.

In the electronic watch 1 according to the present embodiment, thetiming for starting reception and the timing for starting comparison areset so that a code sequence that belongs to the same subframe as theexpected code sequence is necessarily identified, obtained, and comparedregardless of the error in the counter circuit 46. As shown in FIG. 6B,by setting the timing for starting reception at second 2 in UTCdate/time kept by the counter circuit 46 (the downward arrow in theupper row), the timing for starting comparison becomes between second 19and second 23 in the GPS date/time (thick horizontal line in the middlerow), for example. As a result, the part of the incoming code sequencethat is compared with the expected code sequence necessarily becomes thesubframe including the preamble that begins to be received at second 24(thick horizontal line on the right in the lower row). Thus, bygenerating a code sequence that is expected to be transmitted in thesubframe beginning at second 24 as the expected code sequence, theexpected code sequence and the incoming code sequence can be comparedappropriately regardless of the error in the counter circuit 46.

Here, the center time (center date) of the timing for startingcomparison that satisfies these conditions can be set within the2-second interval between second 20 and second 22 (horizontal arrow inthe middle row in FIG. 6B). Suppose that the estimated error in time inthe electronic watch 1 is within ±3 seconds (the overall error length is6 seconds). In this case, by starting a comparison at an arbitrarytiming within ±3 seconds (−3 seconds of estimated error in time) withrespect to the beginning of a predetermined subframe (the period duringwhich the comparison can be started), the incoming code sequence and theexpected code sequence related to the same subframe can be comparedregardless of the magnitude of the estimated error in time. The momentthat is 3 seconds before the beginning of a subframe (−3 seconds ofestimated error in time) corresponds to the moment immediately after thelast moment according to the error in the date/time of the countercircuit 46 when the incoming code sequence and the expected codesequence that are related to the previous subframe are compared, and themoment that is 3 seconds after the beginning of a subframe (+3 secondsof estimated error in time) corresponds to the earliest moment accordingto the error in the date/time of the counter circuit 46 when theincoming code sequence and the expected code sequence related to thesubsequent subframe are compared The timing for beginning comparison maybe set arbitrarily each time within the period during which thecomparison can be started. The timing may be fixed to a predeterminedmoment such as the beginning of the period during which the comparisoncan be started (here second 20) or the center time (second 21 shown withthe downward arrow in the middle row in FIG. 6B), for example.

The date/time for starting reception is determined by taking intoaccount the time needed for capturing the signal with respect to thistiming for starting comparison and calculating backwards therefrom.Here, the reception begins 2 seconds, which is how long it takes tocapture the signal, before the time for starting reception. In otherwords, the reception begins at an arbitrary timing (the receptionstarting period) after second 1 and before second 3 in UTC time measuredby the counter circuit 46 (second 1, which corresponds to the beginningof the reception starting period, or second 2, which is the centraltime). When the capturing of waves from the GPS satellites is completedin less time than the time estimated to be required for the capturing, astandby time can be set between the moment when the capturing of thewaves and the identification of a code sequence begin and the momentwhen the comparison begins. By setting the reception start timing towardthe beginning of the reception start period, even if the actual timerequired for capturing a signal is longer than the estimated time forcapturing a signal, the chance of starting comparison as originallyscheduled increases. At the same time, even when the reception status isfavorable, the reception time becomes longer, thereby increasing theamount of power consumption. Thus, the reception start timing can be setinitially at the center time of the reception start period and beshifted forward or backward depending on the reception history and thelike, for example. Also, setting the reception start timing at thecenter time of the reception start period ensures that the receptionstart timing falls within the period during which the reception can bestarted, even if the timing at which the capturing of a signal iscompleted is slightly early or late. In this case, there are normally noproblems even if the comparison is started without determining whetherthe timing falls within the period during which the reception can bestarted.

FIG. 7 is a flowchart showing control steps executed by the electronicwatch 1 according to Embodiment 2 in receiving and processing thedate/time information.

The operations executed by the electronic watch 1 according to thepresent embodiment are the same as the date/time information receptionprocess executed by the electronic watch 1 according to Embodiment 1,except that the processes involved in steps S221 to S224 are added tothe date/time information reception process executed by the electronicwatch 1 according to Embodiment 1. The same reference characters areused for the same processes, and the descriptions thereof are omitted.

Once the date/time information reception process begins, in the processinvolved in step S201, the module CPU 61 obtains the date/time countedby the counter circuit 46 and the last reception timing from the storageunit 63. Based on these pieces of information, the module CPU 61computes the maximum error that is expected based on the time elapsedsince the date/time of the counter circuit 46 was adjusted (step S201).

The module CPU 61 determines whether the error is smaller than ±3seconds (step S221). When it is determined that the maximum error is notsmaller than ±3 seconds (“NO” in step S221), the process in the moduleCPU 61 moves onto step S224, and the date/time information is obtainedby decoding the code sequence using conventional methods such as the3-word reception from the GPS satellites (step S224). Then, the processin the module CPU 61 moves onto step S211.

When it is determined that the maximum error is smaller than ±3 seconds(“YES” in step S221), the module CPU 61 specifies the subframe that canbe ensured to be compared first when the reception is started after thecurrent date/time regardless of the error in time. Then, the module CPU61 generates an expected code sequence for that subframe (step S202).

The module CPU 61 takes into account the time it takes to capture thesignal, which is set in advance, and specifies the reception startperiod. In the reception start period, a code sequence of the subframespecified above can be obtained from the beginning regardless of theerror in time. In this way, the module CPU 61 determines whether thecurrent date/time falls within the reception start period (step S222).When it is determined that the current date/time does not fall withinthe reception start period (“NO” in step S222), then the module CPU 61repeats the determination process in step S222.

When it is determined that the current date/time falls within thereception start period (“YES” in step S222), then the process in themodule CPU 61 moves on to step S203.

After moving onto the process in step S205 and starting to obtain theincoming data (the incoming code sequence), the module CPU 61 determineswhether the current date/time falls within the period during which acomparison can be started (step S223). When it is determined that thecurrent date/time does not fall within the period during which acomparison can be started (“NO” in step S223), then the module CPU 61repeats the process in step S223. When it is determined that the currentdate/time falls within the period during which a comparison can bestarted (“YES” in step S223), then the process in the module CPU 61moves on to step S206.

In step S208, the module CPU 61 determines whether 6 seconds or longerhave elapsed since the comparison with the expected code sequence hasstarted. In other words, the module CPU 61 determines whether thebeginning of a code sequence of a prescribed bit length chosen out ofthe incoming code sequence to be compared has shifted 6 seconds orlonger from the moment when the comparison has started.

As described above, in the electronic watch 1 according to Embodiment 2,the module CPU 61 functioning as a comparison unit 612 starts to comparethe incoming code sequence and the expected code sequence. Thecomparison starts before the moment when the expected code sequencepredicted on the basis of the date/time counted by the counter circuit46 is detected and within one subframe period from the detection timingdescribed above.

Thus, this method of comparison avoids the situation in which a matchwith the expected code sequence is not detected due to the expected codesequence being compared with a portion of the code sequence thatcorresponds to the expected code sequence that belongs to a subframediffering from the subframe to which the expected code sequence belongs.

The module CPU 61 functioning as an error range calculation unit 616estimates the error range in the counter circuit 46 based on the timeelapsed since the most recent timing at which the watch received thesatellite waves and adjusted the date/time counted by the countercircuit 46. Taking this error range into account, the module CPU 61functioning as the comparison unit 612 estimates the range of timingwhen the detection of the expected code sequence can be started. Basedon this range, the module CPU 61 functioning as the comparison unit 612starts to compare the incoming code sequence and the expected codesequence within the period during which the comparison can be started.

As long as the error range in the counter circuit 46 is within ±3seconds, the expected code sequence is compared necessarily with aportion of the incoming code sequence that corresponds to the expectedcode sequence and belongs to the same subframe to which the expectedcode sequences belongs. This method reliably avoids, regardless of theerror range, the situation in which it is impossible to detect perfectlymatching parts, which is a situation resulting from the module CPU 61comparing an incoming code sequence and an expected code sequence thatbelongs to different subframes.

The timing at which an RF unit 64, a baseband conversion unit 65, and acapturing and tracking unit 66 of the satellite wave reception andprocessing unit 60 start receiving the satellite waves is determinedbased on the period during which the comparison can be started. Startingthe radio wave reception appropriately based on the period during whichthe comparison can be made prevents the radio wave reception time fromunnecessarily getting longer and controls the power consumptionappropriately.

The RF unit 64, the baseband conversion unit 65, and the capturing andtracking unit 66 of the satellite wave reception and processing unit 60starts receiving the satellite waves at a predetermined time that isearlier than when the module CPU 61 starts comparing the incoming codesequence with the expected code sequence. In other words, the electronicwatch 1 reduces the power consumption easily and appropriately andefficiently obtains date/time information by determining the timing ofstart of comparing the expected code sequence with the incoming codesequence and the timing of starting to receive the satellite waves basedon the detection timing of the predicted expected code sequence. Inparticular, remarkably efficient acquisition of date/time informationbecomes possible if it can be predicted that the time needed to capturethe satellite waves is generally uniform for reasons such as theenvironment in which the satellite waves are received does not changesignificantly each time.

The module CPU 61 functioning as an error judgment unit 614 determineswhether the error in the counter circuit 46 that is estimated based onthe time elapsed from the last time when the satellite waves werereceived and the date/time of the counter circuit 46 was adjusted isgreater than the reference time set according to the length of asubframe. If the module CPU 61 functioning as a date/time acquisitionunit 613 determines that the error is not greater than the referencetime, the module CPU 61 obtains date/time based on the expected codesequence that includes a prescribed number of low-order bits oftime-relevant information such as the TOW count and the subframe ID.

In other words, when there is a chance that an error in units ofsubframes can occur due to a large error in the counter circuit 46, thechance that detecting the expected code sequence from the incoming codesequence takes a long time or is not possible increases. By detectingthe expected code sequence from the incoming code sequence afterverifying that there is no such possibility, the module CPU 61 caninstruct the satellite wave reception and processing unit to obtaindate/time information in a more appropriate and efficient manner.

The present invention is not limited to the embodiments described above,and a various types of modifications are possible.

Although the module CPU 61 functioning as the control unit 615 conductedall the processing operations in the embodiments described above, a partor whole of the processing operations may be conducted by the host CPU41. The module CPU 61 and the host CPU 41 may be used jointly by asingle CPU. To store the previous (most recent) reception history, thestorage unit 63 and a RAM 43 may be used jointly.

The module CPU 61 may compare the expected code sequence and theincoming code sequence by shifting one by one the code bit that isobtained when each single bit is obtained. Alternatively, the module CPU61 may first obtain incoming data of a prescribed bit length longer thanthe expected code sequence and then compare with the expected codesequence all at once while shifting the phases thereof. In the formercase, when ending the comparison as soon as the expected code sequenceis identified from the incoming code sequence, if there is amisidentification, the process of comparison ends. However, a codesequence identical to the expected code sequence appearing in thereception location before the location where the code is conventionallyexpected to appear does not cause problems. In the latter case,regardless of whether the conventionally expected location moves forwardor back, if a code sequence that is identical to the expected codesequence appears at a location other than the expected location withinthe incoming data, a process for identifying the correct location isrequired. However, in the latter case, misidentification can be avoidedeffectively.

In the embodiments described above, although the acquisition ofdate/time information in one aspect of the present invention isperformed when the date/time of the counter circuit 46 is adjusted, itmay be that all that is wanted is simply to obtain date/time at aprescribed moment (when the user performs an input operation, forexample). When date/time related to the expected code sequence isneeded, the user may perform an input operation, or the date/time may beobtained from other external devices.

In the embodiments described above, whether to obtain the date/timeinformation related to the present invention was determined according tothe estimated error in the counter circuit 46. However, if the magnitudeof the error can be accurately estimated, the module CPU may generatethe expected code sequence based on the date/time that reflects themagnitude of the error, compare with the incoming code sequence, andobtain date/time information.

Also, the embodiments above described a case in which a comparison isconducted with respect to the reception waves from the GPS satellites.However, the comparison may be conducted with respect to the codesequences related to the incoming waves from other positioningsatellites like the GLONASS satellites, for example. In this case, thetransmission time of a string (2 seconds) may be taken as thetransmission period, and the string number may be used as time-relevantinformation.

In the embodiments described above, the probability of occurrence of theexpected code sequence in an unexpected location was computed assumingthat the probabilities of occurrence of 0 and 1 in each code locationare ½, respectively. However, with respect to the parts of the codesequence for which the probability of occurrence is clearly differentfrom ½ such as the invariant code sequence or the most significant bitsin the TOW, the probability of occurrence for those parts may be setseparately and calculated.

The product life cycle and the frequency of radio wave reception per dayof the electronic watch 1 shown in the embodiments described above areset arbitrarily. These setting may be decided in advance depending onproducts or suitably changeable by the user operation. Thus, dependingon these factors, the number of bits used for comparison needed toachieve required accuracy can increase or decrease appropriately.

Also, in the embodiments described above, the reception of the contentswithin the same subframe and the comparison with the expected codesequence were described taking the locations of word 1 and word 2 as thecenter. However, the reception may be limited to subframe 1, and the WNof word 3 may be included. Alternatively, the reception may not belimited to subframe and may include data from other subframes.Furthermore, the expected code sequence may be generated by using datafrom adjacent subframes.

In the embodiments described above, the fact that it is preferable thata code sequence that change according to the transmission period(subframe) be included in the expected code sequence was described.However, the expected code sequence may be generated from only the codesequences that change in this way or may be combined with invariant codesequences.

The description above used the storage unit 63 made of non-volatilememory as a computer-readable medium for operation processing programsrelated to measurements such as the time zone calculation processinginvolved in the processing operations of the module CPU 61 of thepresent invention as an example, but the present invention is notlimited to this.

A portable storage medium such as a HDD (hard disk drive), a CD-ROM, ora DVD disk can be used as an alternative computer-readable medium. As amedium that provides program data related to the present invention viatelecommunication lines, a carrier wave is applicable to the presentinvention.

Besides what is described above, the specific configurations shown inthe embodiments described above, the contents and steps of operations,and the like can be appropriately modified without departing from thespirit of the invention.

Several embodiments of the present invention were described, but thescope of the present invention is not limited to these and includes thescope of the invention as described in the claims and the equivalentsthereto.

It will be apparent to those skilled in the art that variousmodifications and variations can be made in the present inventionwithout departing from the spirit or scope of the invention. Thus, it isintended that the present invention cover modifications and variationsthat come within the scope of the appended claims and their equivalents.In particular, it is explicitly contemplated that any part or whole ofany two or more of the embodiments and their modifications describedabove can be combined and regarded within the scope of the presentinvention.

What is claimed is:
 1. A radio-controlled timepiece, comprising: a radiowave reception unit that receives satellite waves and extracts anincoming code sequence formatted in a prescribed format from saidreceived satellite waves; and a processor that generates in advance anexpected code sequence that is expected to be part of said incoming codesequence and detects said expected code sequence within said incomingcode sequence by sequentially comparing said expected code sequence withsaid incoming code sequence, the processor determining a presentdate/time, as indicated by the satellite waves, in accordance with atiming at which said detected code sequence occurs within said incomingcode sequence as measured by time kept by the timepiece, wherein saidexpected code sequence includes codes that change with a transmissionperiod during which time-related information that includes satellitedate/time contained in the satellite waves, which is formatted in saidprescribed format, is transmitted.
 2. The radio-controlled timepieceaccording to claim 1, further comprising: a counter unit that counts adate/time of said radio-controlled timepiece, wherein said processordetermines an error in said date/time counted by said counter unit inaccordance with said timing at which said detected code sequence occurswithin said incoming code sequence, which is measured in said date/timecounted by the counter unit.
 3. The radio-controlled timepiece accordingto claim 1, further comprising: a counter unit that counts a date/timeof said radio-controlled timepiece, wherein said processor, inaccordance with said date/time counted by said counter unit, generatessaid expected code sequence that includes a prescribed number oflow-order bits that are part of a code sequence representing saidtime-related information and determines said present date/time inaccordance with said timing at which said detected code sequence occurswithin said incoming code sequence as measured in said date/time countedby said counter unit.
 4. The radio-controlled timepiece according toclaim 3, wherein, if a time that is longer than or equal to saidtransmission period elapses without said expected code sequence beingdetected from said incoming code sequence, then said processor renewssaid expected code sequence in accordance with time-related informationthat is transmitted after said transmission period.
 5. Theradio-controlled timepiece according to claim 3, wherein said processordetermines whether an estimated error in said counter unit, which isestimated based on an elapsed time from a most recent time when saiddate/time of said counter unit was corrected, is greater than or equalto a reference time that is set based on said transmission period, andif said processor determines said error to be not greater than or equalto said reference time, said processor determines said present date/timebased on said expected code sequence that includes said prescribednumber of low-order bits.
 6. The radio-controlled timepiece according toclaim 3, wherein said time-related information that is included in saidexpected code sequence includes a value that corresponds to a periodnumber indicating a number of said transmission period.
 7. Theradio-controlled timepiece according to claim 3, wherein said processorstarts comparing said incoming code sequence with said expected codesequence at a moment in time that is before an estimated start time atwhich said expected code sequence is predicted to start in said incomingcode sequence in said date/time counted by said counter unit and that iswithin one said transmission period measured from said estimated starttime.
 8. The radio-controlled timepiece according to claim 7, whereinsaid processor estimates a range of error in said counter unit based ona time interval elapsed since a most recent time when said date/timecounted by said counter unit was corrected and derives said estimatedstart time at which said expected code sequence is predicted to start insaid incoming code sequence in accordance with said estimated range oferror in said counter unit.
 9. The radio-controlled timepiece accordingto claim 8, wherein said radio wave reception unit determines a timingof when to start receiving said satellite waves based on said moment intime at which said processor starts comparing said incoming codesequence with said expected code sequence.
 10. The radio-controlledtimepiece according to claim 8, wherein said radio wave reception unitstarts receiving said satellite waves at a preset time interval priorsaid moment in time at which said processor starts comparing saidincoming code sequence with said expected code sequence.
 11. Theradio-controlled timepiece according to claim 1, wherein a length ofsaid expected code sequence is set such that a probability that saidexpected code sequence occurs in a location that is not expected withinsaid incoming code sequence is lower than a prescribed reference value.12. The radio-controlled timepiece according to claim 11, wherein saidprobability is computed by assuming that, in each of binary code bitsthat constitute said incoming code sequence, a probability that 0 occursand a probability that 1 occurs are ½, respectively.
 13. Theradio-controlled timepiece according to claim 11, wherein saidprescribed reference value is set according to a number of times saidradio wave reception unit is expected to receive said satellite wavesduring an expected lifespan of the radio controlled timepiece.
 14. Theradio-controlled timepiece according to claim 1, wherein a length ofsaid expected code sequence is set to be shorter than a length of a datablock that includes: invariant code sequences that do not change withsaid transmission period; satellite time information; and an errorcorrection code for said satellite time information.
 15. Theradio-controlled timepiece according to claim 14, wherein said satellitewaves are sent from a Global Positioning Satellite, and said length ofsaid data block has a length of 2 words.
 16. The radio-controlledtimepiece according to claim 1, wherein a transmitted code sequence thatcorresponds to content in transmitted information from a positioningsatellite that transmits said satellite waves in said prescribed formatincludes inversion codes, said transmitted code sequence having unitblocks that are preset, and for each of the unit blocks, thecorresponding inversion code determining whether to invert code bits inthe unit block before said transmitted code sequence is transmitted, andwherein said processor generates one expected code sequence thatincludes a code sequence in which each of the code bits in each of saidunit blocks within said expected code sequence are inverted one saidunit block at a time and another expected code sequence that includesanother code sequence in which said each of the code bits are notinverted and compares both said one expected code sequence and saidanother expected code sequence with said incoming code sequence.
 17. Theradio-controlled timepiece according to claim 1, further comprising: astorage unit that stores a reception history of most recently receivedsatellite waves and a code sequence that is obtained from said mostrecently received satellite waves, wherein said processor determines,based on types of information represented by said code sequence that isstored in said storage unit, a part of said code sequence that does notchange within a time interval between when said most recently receivedsatellite waves were received and a present moment and includes at leasta portion of said part in said expected code sequence.
 18. Aradio-controlled timepiece comprising: a radio wave reception unit thatreceives satellite waves and extracts an incoming code sequenceformatted in a prescribed format from said received satellite waves; aprocessor that generates in advance an expected code sequence that isexpected to be part of said incoming code sequence and detects saidexpected code sequence within said incoming code sequence bysequentially comparing said expected code sequence with said incomingcode sequence, the processor determining a present date/time, asindicated by the satellite waves, in accordance with a timing at whichsaid detected code sequence occurs within said incoming code sequence asmeasured by time kept by the timepiece; and a storage unit that stores areception history of most recently received satellite waves and a codesequence that is obtained from said most recently received satellitewaves, wherein said processor determines, based on types of informationrepresented by said code sequence that is stored in said storage unit, apart of said code sequence that does not change within a time intervalbetween when said most recently received satellite waves were receivedand a present moment and includes at least a portion of said part ofsaid code sequence in said expected code sequence.
 19. A method ofdetermining date/time information performed by a processor thatcommunicates with a radio wave reception unit that receives satellitewaves and extracts an incoming code sequence formatted in a prescribedformat from said received satellite waves, the method comprising:generating in advance an expected code sequence that is expected to bepart of said incoming code sequence; detecting said expected codesequence within said incoming code sequence by sequentially comparingsaid expected code sequence with said incoming code sequence, anddetermining a present date/time, as indicated by the satellite waves, inaccordance with a timing at which said detected code sequence occurswithin said incoming code sequence as measured by time kept by theprocessor, wherein said expected code sequence includes codes thatchange with a transmission period during which time-related informationthat includes satellite date/time contained in the satellite waves,which is formatted in said prescribed format, is transmitted.
 20. Anon-transitory storage medium that stores instructions executable by aprocessor communicating with a radio wave reception unit that receivessatellite waves and extracts an incoming code sequence formatted in aprescribed format from said received satellite waves, said instructionscausing the processor to perform the following: generating in advance anexpected code sequence that is expected to be part of said incoming codesequence; detecting said expected code sequence within said incomingcode sequence by sequentially comparing said expected code sequence withsaid incoming code sequence, and determining a present date/time, asindicated by the satellite waves, in accordance with a timing at whichsaid detected code sequence occurs within said incoming code sequence asmeasured by time kept by the processor, wherein said expected codesequence includes codes that change with a transmission period duringwhich time-related information that includes satellite date/timecontained in the satellite waves, which is formatted in said prescribedformat, is transmitted.